package top.tenebrous.yzl.im.factory.channel;

import top.tenebrous.yzl.im.enums.ChannelType;
import top.tenebrous.yzl.im.enums.MessageType;
import top.tenebrous.yzl.im.handler.MessageHandler;
import top.tenebrous.yzl.im.handler.channel.Channel;
import top.tenebrous.yzl.im.message.Message;

/**
 * 消息工厂
 *
 * @author yazhang6
 */
public interface ChannelFactory<E extends Message> {

    void register(ChannelType channelType, Channel<E> channel);

    Channel<E> getChannel(ChannelType channelType);

}
